package project;

import java.util.List;
import java.util.ArrayList;

public class Contato implements Comparable {
	
	private String nome, endereco, dataAniversario;
	private List<FormaDeContato> formasDeContato;
	
	public Contato(String nome, String endereco, String dataAniversario, FormaDeContato formaContato) {
		this.nome = nome;
		this.endereco = endereco;
		this.dataAniversario = dataAniversario;
		
		formasDeContato = new ArrayList<FormaDeContato>();
		formasDeContato.add(formaContato);
	}

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public String getDataAniversario() {
		return dataAniversario;
	}

	public void setDataAniversario(String dataAniversario) {
		this.dataAniversario = dataAniversario;
	}

	public List<FormaDeContato> getFormasDeContato() {
		return formasDeContato;
	}

	@Override
	public int compareTo(Object obj) throws ClassCastException {
		if (!(obj instanceof Contato)) {
			throw new ClassCastException("E aí boy?! deu águia!!!");
		}
		
		Contato c = (Contato)obj;
		
		return nome.compareTo(c.getNome());
	}
	
	
	
}
